﻿using Domain.Entity.Basic_information;
using Domain.Entity.Order_goods;
using Domain.Entity.System_dictionary;
using Domain.Entity.System_operation;
using Domain.Entity.System_Ordermanagement;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AppService.IService.System_order
{
    public interface IorderService
    {
        int Count(int Ord_state, string Ord_startaddress, string Ord_destination, string Ord_time, string Client_name);     //数据总数
        List<Orders> GetOrders(int currentPage, int PageSize);    //分页查询

        List<Orders> GetOrders_state(int state, int currentPage, int PageSize);   //根据订单状态查询

        List<Sys_dict_data> GetSys_dict_data();   //查询数据字典，取运输类型的值（运输类型==订单类型）

        List<Orders> Orders_condition(int Ord_state, string Ord_startaddress, string Ord_destination, string Ord_time, string Client_name, int currentPage, int PageSize);    //条件搜索
        List<Order_client> GetOrder_client(string Ord_number);   //根据订单号查询客户表和订单表

        List<Order_good_cargo> GetOgc(string Ord_number);   //查询订单货物

        List<Carrier_ment> GetCarrier_Ments();   //查询承运商

        List<Drivers_ment> GetDrivers_Ments(int Dv_carrier);  //根据承运商查询司机

        List<Drivers_ment> GetDrivers_Ments_id(int Dv_id);   //根据id查询司机

        List<Vehicles_ment> Getvehicles_Ments(int Dv_id);   //根据司机id查询车牌号

        List<Sys_dict_data> sys_Dict_Datas(int Dv_model, int Dv_length);  //根据车长和车型id查询数据字典车长和车型

        List<Order_cargo> Getorder_Cargos(int Ord_id);   //查询订单货物

        bool Add(Wb_meter wb_Meter);   //调度添加运单

        List<Cargo_ment> GetCargo_Ments();  //查询货物信息

        List<Customer_ment> GetCustomer_Ments();  //查询客户信息

        List<Customer_ment> GetCustomer_Ments_name(string Ct_name);  //根据客户名称查询
        bool AddOr(Orders orders);   //添加

        List<Orders> GetOrders_number(string Ord_number);  //根据订单编号查询

        bool AddOrders_good(Order_good order_Good);  //添加订单货物表

        bool JD(int Ord_id);//修改待提货状态

        bool TH(int Ord_id);//修改为已提货状态

        bool FC(int Ord_id);//修改为运输中状态

        bool DZ(int Ord_id);//修改为运输中状态

        bool HD(int Ord_id);
    }
}
